package com.serkol.abmanager.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import java.util.Objects;

/**
 * 
 * @TableName tracks
 */
@TableName(value ="tracks")
public class Tracks implements Serializable {
    /**
     * 
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 
     */
    private Long goodsId;

    /**
     * 
     */
    private String qrCode;

    /**
     * 
     */
    private Long userId;

    /**
     * 
     */
    private Integer status;

    /**
     * 
     */
    private Date createDate;

    /**
     * 
     */
    private Date updateDate;

    /**
     * 
     */
    private Long groupId;

    /**
     * 
     */
    private Long deptId;

    /**
     * 
     */
    private Long carId;


    private String remark;


    private String boxRfid;

    private Long roleId;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getGoodsId() {
        return goodsId;
    }

    public void setGoodsId(Long goodsId) {
        this.goodsId = goodsId;
    }

    public String getQrCode() {
        return qrCode;
    }

    public void setQrCode(String qrCode) {
        this.qrCode = qrCode;
    }

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public Date getCreateDate() {
        return createDate;
    }

    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }

    public Date getUpdateDate() {
        return updateDate;
    }

    public void setUpdateDate(Date updateDate) {
        this.updateDate = updateDate;
    }

    public Long getGroupId() {
        return groupId;
    }

    public void setGroupId(Long groupId) {
        this.groupId = groupId;
    }

    public Long getDeptId() {
        return deptId;
    }

    public void setDeptId(Long deptId) {
        this.deptId = deptId;
    }

    public Long getCarId() {
        return carId;
    }

    public void setCarId(Long carId) {
        this.carId = carId;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public String getBoxRfid() {
        return boxRfid;
    }

    public void setBoxRfid(String boxRfid) {
        this.boxRfid = boxRfid;
    }

    public Long getRoleId() {
        return roleId;
    }

    public void setRoleId(Long roleId) {
        this.roleId = roleId;
    }

    @Override
    public String toString() {
        return "Tracks{" +
                "id=" + id +
                ", goodsId=" + goodsId +
                ", qrCode='" + qrCode + '\'' +
                ", userId=" + userId +
                ", status=" + status +
                ", createDate=" + createDate +
                ", updateDate=" + updateDate +
                ", groupId=" + groupId +
                ", deptId=" + deptId +
                ", carId=" + carId +
                ", remark='" + remark + '\'' +
                ", boxRfid='" + boxRfid + '\'' +
                ", roleId=" + roleId +
                '}';
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (!(o instanceof Tracks)) return false;
        Tracks tracks = (Tracks) o;
        return Objects.equals(getId(), tracks.getId()) && Objects.equals(getGoodsId(), tracks.getGoodsId()) && Objects.equals(getQrCode(), tracks.getQrCode()) && Objects.equals(getUserId(), tracks.getUserId()) && Objects.equals(getStatus(), tracks.getStatus()) && Objects.equals(getCreateDate(), tracks.getCreateDate()) && Objects.equals(getUpdateDate(), tracks.getUpdateDate()) && Objects.equals(getGroupId(), tracks.getGroupId()) && Objects.equals(getDeptId(), tracks.getDeptId()) && Objects.equals(getCarId(), tracks.getCarId()) && Objects.equals(getRemark(), tracks.getRemark()) && Objects.equals(getBoxRfid(), tracks.getBoxRfid()) && Objects.equals(getRoleId(), tracks.getRoleId());
    }

    @Override
    public int hashCode() {
        return Objects.hash(getId(), getGoodsId(), getQrCode(), getUserId(), getStatus(), getCreateDate(), getUpdateDate(), getGroupId(), getDeptId(), getCarId(), getRemark(), getBoxRfid(), getRoleId());
    }
}